home *** CD-ROM | disk | FTP | other *** search
/ Developer CD Series 1993…ch: Other People's Memory / ADC Developer CD (1993-03) (''Other People's Memory'')_iso / Dev.CD Mar 93.iso / Development Platforms / CSMP Digests / csmp-v1-030.txt < prev    next >
Encoding:
Text File  |  1992-11-18  |  38.1 KB  |  1,049 lines  |  [TEXT/MPS ]

  1. C.S.M.P. Digest             Tue, 24 Mar 92       Volume 1 : Issue 30
  2.  
  3. Today's Topics:
  4.  
  5.     Mac CLOS/TCP-IP packages?
  6.     Safe ExitToShell from Think Pascal
  7.     Printing PostScript without Apple's crapola
  8.     68881 code with THINK C 4.02
  9.     Problem compiling NewClassDemo using TC5.0.2 and TCL1.1.2
  10.     Ok, where are the 411 file on ETO6?
  11.     Dynamically Loading Subclasses in TC5.0
  12.     TCL, RequestMemory() & Error 28
  13.     Compression--is it worth it?
  14.      6.07 Bug
  15.     patching StripAddress
  16.     Chinese OS?
  17.  
  18.  
  19. The Comp.Sys.Mac.Programmer Digest is moderated by Michael A. Kelly.
  20.  
  21. These digests are available (by using FTP, account anonymous, your email
  22. address as password) in the pub/mac/csmp-digest directory on ftp.cs.uoregon.
  23. edu.  This is also the home of the comp.sys.mac.programmer Frequently Asked
  24. Questions list.
  25.  
  26. These digests are also available via email.  Just send a note saying that you
  27. want to be on the digest mailing list to mkelly@cs.uoregon.edu, and you will
  28. automatically receive each new digest as it is created.
  29.  
  30. The articles in these digests are taken directly from comp.sys.mac.programmer.
  31. They are not edited; all articles included in this digest are in their original
  32. posted form.  The only articles that are -not- included in these digests are
  33. those which didn't receive any replies (except those that give information
  34. rather than ask a question).  All replies to each article are concatenated
  35. onto the original article in the order in which they were received.  Article
  36. threads are not added to the digests until the last article added to the
  37. thread is at least one month old (this is to ensure that the thread is dead
  38. before adding it to the digests).
  39.  
  40. Send administrative mail to mkelly@cs.uoregon.edu.
  41.  
  42. -------------------------------------------------------
  43.  
  44. From: andru@electron.LCS.MIT.EDU (Andrew Myers)
  45. Subject: Mac CLOS/TCP-IP packages?
  46. Organization: MIT Laboratory for Computer Science
  47. Date: Fri, 14 Feb 1992 21:50:20 GMT
  48.  
  49.  
  50. I will shortly be writing an application which needs to connect CLOS
  51. running on a Mac to a UNIX box, using TCP-IP. Does anyone have a
  52. package that can expedite this process, such as TCP-IP bindings for
  53. CLOS? Thanks,
  54.  
  55. Andrew
  56.  
  57.  
  58.  
  59. - -------------------------
  60.  
  61. From: ksand@apple.com (Kent Sandvik)
  62. Subject:  Mac CLOS/TCP-IP packages?
  63. Date: 16 Feb 92 08:48:16 GMT
  64. Organization: MacDTS Mongols
  65.  
  66. In article <1992Feb14.215020.28924@mintaka.lcs.mit.edu>, andru@electron.LCS.MIT.EDU (Andrew Myers) writes:
  67. > I will shortly be writing an application which needs to connect CLOS
  68. > running on a Mac to a UNIX box, using TCP-IP. Does anyone have a
  69. > package that can expedite this process, such as TCP-IP bindings for
  70. > CLOS? Thanks,
  71.  
  72. I saw that the MCL 2.0 final package has a TCP streams module. Don't remember
  73. if this was present on 2.0b1 or the b4 patches (I think so), I kind of deleted my
  74. early versions when I got the pre-release of the final MCL.
  75.  
  76. Kent Sandvik/DTS
  77.  
  78.  
  79.  
  80. - -------------------------
  81.  
  82. From: Chewy@cup.portal.com (Paul Frederick Snively)
  83. Subject:  Mac CLOS/TCP-IP packages?
  84. Date: 15 Feb 92 08:11:03 GMT
  85. Organization: The Portal System (TM)
  86.  
  87. [The poster asked about using CLOS in MCL to talk to UNIX boxes over TCP/IP.]
  88.  
  89. I'm not quite sure, from your post, what you're looking for.  If you want to
  90. `roll your own' stuff at the TCP/IP level, then I suggest that you FTP the
  91. corrected MacTCP interface file for MCL 2.x from brazil.cambridge.apple.com
  92. (look in the MCL2 directory).
  93.  
  94. A better approach might be to FTP to ftp.ncsa.uiuc.edu and look in
  95. misc/unsupported for a mostly-Berkeley-compatible socket library using MacTCP.
  96. You could link the socket library into your code using the Foreign Function
  97. Interface, and then write CLOS classes around it.  You may wish to scare up
  98. the "Socket Streams" code that's been discussed in comp.lang.c++ and work from
  99. that.  The advantage here, of course, would be that a) you could talk to
  100. anything that groks Berkeley sockets (i.e. pretty much the entire UNIX world)
  101. and b) you could use pretty normal-appearing stream-oriented I/O to do it.
  102.  
  103. Paul Snively
  104. Dissolute Wandering Hacker
  105. Chewy@apple.com    <-- please mail me here, if you wish to mail me at all.
  106.  
  107.  
  108.  
  109. ---------------------------
  110.  
  111. From: laplace.biology.yale.edu (Warren DeLano)
  112. Subject: Safe ExitToShell from Think Pascal
  113. Date: 16 Feb 92 08:27:09 GMT
  114. Organization: Yale University
  115.  
  116. Is there a way to use the ExitToShell command from TMON 
  117. to exit a program (running under Think Pascal) that 
  118. doesn't cause a crash?  
  119.  
  120. ExitToShell works fine when killing programs in Think C, but
  121. it has never worked for Think Pascal.
  122.  
  123. Thanks
  124. Warren
  125.  
  126. warren@laplace.biology.yale.edu
  127.  
  128.  
  129.  
  130. - -------------------------
  131.  
  132. From: siegel@world.std.com (Rich Siegel)
  133. Subject:  Safe ExitToShell from Think Pascal
  134. Date: 20 Feb 92 21:38:53 GMT
  135. Organization: Symantec Language Products Group
  136.  
  137.  
  138. In article <1992Feb16.082709.9320@news.yale.edu> laplace.biology.yale.edu (Warr:
  139. >Is there a way to use the ExitToShell command from TMON
  140. >to exit a program (running under Think Pascal) that
  141. >doesn't cause a crash?
  142.  
  143. Bring up the Registers window, and set the PC to !_ExitToShell, and then
  144. exit TMON.
  145.                                                                                
  146. R.
  147.  
  148. -- 
  149. - ---------------------------------------------------------------------
  150. Rich Siegel                              Internet: siegel@world.std.com
  151. Senior Software Engineer                 Applelink: SIEGEL
  152. Symantec Languages Group
  153.  
  154.  
  155.  
  156. ---------------------------
  157.  
  158. From: deadman@garnet.berkeley.edu (Ben Haller)
  159. Subject: Printing PostScript without Apple's crapola
  160. Date: 20 Feb 92 15:42:40 GMT
  161. Organization: Stick Software
  162.  
  163.  
  164.   Well, those of you who know me as the "Rebel Without A Cause" who hates
  165. everything Apple does (not really, but almost :->) will not be surprised by
  166. this latest rant.  But - surprise - it has nothing to do with
  167. direct-to-screen drawing?  No, I've moved on to direct-to-printer drawing
  168. now :->
  169.   I am trying to print PostScript.  I am currently using the PicComment
  170. method of enclosing PS commands within a picture, and then printing the
  171. picture.  However, I am not happy with this.  The reason is that Apple's
  172. DSC (Document Structuring Conventions, see the Red book) comments are
  173. getting in my way.  For example, they give a bounding box of "? ? ? ?" when
  174. in fact I know quite well what my bounding box is, and would like it to be
  175. in the header.  They don't list the fonts that I use in the DocumentFonts
  176. comment, they say the wrong number of pages, the wrong creator, title, they
  177. spew out their header and then say "%%EndProlog" when in fact not only do
  178. I not want and not use their header, but I have a prolog of my own thank
  179. you very much.
  180.   So I could just go directly to the ".PAP" (I think that's the name)
  181. driver and to hell with the OS.  However, I'd like to get the standard
  182. printer dialogs (I will emit the code to do portrait vs. landscape and such
  183. myself unless there is a good reason to let Apple do it around me), I'd
  184. like to get spooled by PrintMonitor, etc.
  185.   So is there a middle ground?  Is there a way to print PostScript by just
  186. handing the system my code and saying "here, this is a complete file, don't
  187. mess with it" while still doing all the nice things the user expects?
  188.   On a slightly different topic, is there a way to tell whether the printer
  189. I'm going to is a PostScript printer or not?  I *can* generate QuickDraw
  190. for non-PostScript printers.  But I want to generate the PostScript myself
  191. when possible.
  192.   Basically I'm trying to be as compatable as possible while still
  193. completely taking over the system.  Business as usual...
  194.  
  195. -Ben Haller (deadman@garnet.berkeley.edu)
  196.  
  197.  
  198.  
  199. - -------------------------
  200.  
  201. From: mandel@vax.anes.tulane.edu (Jeff E Mandel)
  202. Subject:  Printing PostScript without Apple's crapola
  203. Date: 21 Feb 92 20:04:26 GMT
  204. Organization: Tulane University School of Medicine
  205.  
  206. In article <kq7j3gINN2so@agate.berkeley.edu> deadman@garnet.berkeley.edu (Ben
  207. Haller) writes:
  208. >  So I could just go directly to the ".PAP" (I think that's the name)
  209. >driver and to hell with the OS.  However, I'd like to get the standard
  210. >printer dialogs (I will emit the code to do portrait vs. landscape and such
  211. >myself unless there is a good reason to let Apple do it around me), I'd
  212. >like to get spooled by PrintMonitor, etc.
  213.  
  214. There is a C++ library which I wrote to go to PAP. It is available on
  215. rs1.tcs.tulane.edu (it is the only Mac file there, I believe). I have used it
  216. to implement an XCMD to send the passed container to the printer, and
  217. optionally return information from the printer.
  218.  
  219. As for using the Apple dialogs, there is nothing to stop you from doing this
  220. and just extracting the information you want from the record, then deleting the
  221. printing record and accessing PAP. As for knowing whether you have a Postscript
  222. device, a reasonble (but not perfect) solution is to see what kind of device
  223. the printer is (from an NBP perspective); a LaserWriter is generally
  224. Postscript.
  225.  
  226. The main problem with PAP is it presumes the printer is on the network; a
  227. serial or SCSI attached printer won't show up. Other than that, if you are
  228. willing to manage all of the Postscript generation, PAP is significantly faster
  229. than PICT comments. My silly MS Works Mail Merge Enhancer (on the MacHacks '91
  230. CD-ROM), rewritten to use PAP, drives a DataProducts LZR 1260 at its
  231. paper-handling speed from a Mac LC now.
  232.  
  233. Jeff E Mandel MD MS
  234. Associate Professor of Anesthesiology
  235. Tulane University School of Medicine
  236. New Orleans, LA
  237.  
  238. mandel@vax.anes.tulane.edu
  239.  
  240.  
  241.  
  242. - -------------------------
  243.  
  244. From: marshall@sdd.hp.com (Marshall Clow)
  245. Subject:  Printing PostScript without Apple's crapola
  246. Organization: Hewlett Packard Color Imaging Division
  247. Date: Fri, 21 Feb 1992 20:33:35 GMT
  248.  
  249. In article <1992Feb21.200426.9659@cs.tulane.edu>, Jeff E Mandel <mandel@vax.anes.tulane.edu> writes:
  250. > As for knowing whether you have a Postscript device, a reasonble
  251. > (but not perfect) solution is to see what kind of device
  252. > the printer is (from an NBP perspective); a LaserWriter is generally
  253. > Postscript.> 
  254.  
  255. The way that I use to determine if a printer driver prints to a PostScript
  256. printer is to check the PACK(-4096) resource in the driver. The long word
  257. at offset $C in the resource contains lots of flags. Among the interesting
  258. ones are:
  259.           Bit 31:    Set if AppleTalk device.
  260.           Bit 30: Set if device uses PAP
  261.           Bit 29: Set if device uses PostScript
  262.  
  263. Note that this information is specific to the printer driver, not to the
  264. printer, but they usually come as a pair.
  265.  
  266. Marshall Clow
  267. Mac Driver Development
  268. San Diego Printer Division
  269. Hewlett Packard
  270. marshall@sdd.hp.com
  271.  
  272.  
  273.  
  274.  
  275. - -------------------------
  276.  
  277. From: CXT105@psuvm.psu.edu (Christopher Tate)
  278. Subject:  Printing PostScript without Apple's crapola
  279. Date: 22 Feb 92 02:39:29 GMT
  280. Organization: Penn State University
  281.  
  282. In article <1992Feb21.200426.9659@cs.tulane.edu>, Jeff E Mandel
  283. <mandel@vax.anes.tulane.edu> says:
  284. >
  285. >There is a C++ library which I wrote to go to PAP. It is available on
  286. >rs1.tcs.tulane.edu (it is the only Mac file there, I believe). I have used it
  287. >to implement an XCMD to send the passed container to the printer, and
  288. >optionally return information from the printer.
  289.  
  290. I fetched down this file (which BTW is in the /pub/mac directory, with
  291. the file name dopap-xcmd.hqx), and discovered that it is incomplete.
  292. Specifically, attempting to un-binhex it resulted in an "unexpected
  293. end-of-file" error.  I checked, and the last partial line of the file
  294. does not end with a ':' character, as it should.  Appending a ':' also
  295. failed to work.
  296.  
  297. I'm also interested in getting hold of this code; could the binhex file
  298. on the FTP site be replaced with a clean copy?
  299.  
  300. - -----
  301. Christopher Tate                 |  Cryptogram #8:
  302. cxt105@psuvm.psu.edu             |
  303. CXT105@PSUVM.BITNET              |  UNOSKVL OR EWKV DGQ LAYLUV.
  304. - -------------------------------|  ELKVWLM OR EWKV DGQ HLV.
  305. Send me the answer; I love mail! |
  306.  
  307.  
  308.  
  309. - -------------------------
  310.  
  311. From: mandel@vax.anes.tulane.edu (Jeff E Mandel)
  312. Subject:  Printing PostScript without Apple's crapola
  313. Date: 22 Feb 92 04:52:46 GMT
  314. Organization: Tulane University School of Medicine
  315.  
  316. In article <92052.213929CXT105@psuvm.psu.edu> Christopher Tate
  317. <CXT105@psuvm.psu.edu> writes:
  318. >
  319. >I fetched down this file (which BTW is in the /pub/mac directory, with
  320. >the file name dopap-xcmd.hqx), and discovered that it is incomplete.
  321. >Specifically, attempting to un-binhex it resulted in an "unexpected
  322. >end-of-file" error.  I checked, and the last partial line of the file
  323. >does not end with a ':' character, as it should.  Appending a ':' also
  324. >failed to work.
  325. >
  326. >I'm also interested in getting hold of this code; could the binhex file
  327. >on the FTP site be replaced with a clean copy?
  328. >
  329.  
  330. Sorry, not my archive. I'll see what I can do about it next week.
  331.  
  332. Jeff E Mandel MD MS
  333. Associate Professor of Anesthesiology
  334. Tulane University School of Medicine
  335. New Orleans, LA
  336.  
  337. mandel@vax.anes.tulane.edu
  338.  
  339.  
  340.  
  341. ---------------------------
  342.  
  343. From: erh0362@tesla.njit.edu
  344. Subject: 68881 code with THINK C 4.02
  345. Date: 20 Feb 92 15:31:26 GMT
  346. Organization: New Jersey Institute of Technology
  347.  
  348.  
  349.         I'm trying to compile some code I've written to do a fairly basic math
  350. problem (Gaussian elimination on the Hilbert matrix) on an SE/30 with System
  351. 6.05 and Think C 4.02. (I wish I could afford the upgrade right now, but it's
  352. probably not relevant for my purposes.) The code is all ANSI standard C and
  353. compiles and runs fine on both a SPARC II and a SUN 3 using gcc 1.40. I'm
  354. trying to move it to the Mac because of its higher precision arithmetic. If I
  355. uncheck the 68881 code generation option for Think C, then the code compiles
  356. and runs properly.  I'd like to be able too use the 96 bit precision of the
  357. 68881, but when I check the 68881 code generation option, everything still
  358. compiles and runs, but the answers are garbage. I realize the Hilbert matrix is
  359. ill-conditioned but, even for small Hilbert matrixes (dimension = 2 for
  360. example) that aren't ill-conditioned the answers are complete garbage. And if I
  361. don't compile for the 68881 then the answers with the exact same code, are
  362. fine.
  363.         I'm including the ANSI library in my project, and also #including the
  364. headers stdio.h, stdlib.h, and math.h. Is there anything I'm missing? An
  365. additional library to add to the project or file to #include? This really has me
  366. baffled.
  367.         Because of the number of different systems this code compiles and runs
  368. successfully on, I'm reasonably sure this is a Think C question rather than a
  369. generic C question, which is why I'm posting it here. Please send answers or
  370. suggestions by E-mail if possible since I generally don't read this newsgroup.
  371.  
  372. Elliotte Rusty Harold                      Department of Applied Mathematics
  373. elharo@m.njit.edu                  New Jersey Institute of Technology
  374. erh0362@tesla.njit.edu                       Newark, NJ 07103
  375.  
  376.  
  377.  
  378. - -------------------------
  379.  
  380. From: kiwi@IASTATE.EDU (Bevin L Harris)
  381. Subject:  68881 code with THINK C 4.02
  382. Date: 20 Feb 92 20:07:12 GMT
  383. Organization: Iowa State University
  384.  
  385. Just a thought- have you added ansi to prject rather than ansi881. If not the
  386. results from the program will be garbage.
  387.  
  388.  
  389.  
  390. ---------------------------
  391.  
  392. From: hao@slipknot.mit.edu (Cindy Hao)
  393. Subject: Problem compiling NewClassDemo using TC5.0.2 and TCL1.1.2
  394. Date: 20 Feb 92 16:54:20 GMT
  395. Organization: Massachvsetts Institvte of Technology
  396.  
  397. I have just updated my ThinkC from 5.0.1 to 5.0.2, but now I cannot
  398. compile NewClassDemo.  
  399.  
  400. I got the following error message: no such member 'cHaveIconDispatch'
  401. at the line "Boolean CIconPane::cHaveIconDispatch = FALSE;" in
  402. the program CIconPane.c.
  403.  
  404. I checked that in CIconPane.h cHaveIconDispatch was indeed a member as
  405. defined on the line:
  406. "static Boolean cHaveIconDispatch;   // TCL 1.1.2  "
  407.  
  408. Can anybody tell me what's wrong?  (Some other programs of mine do not
  409. compile any more for the same reason.)
  410.  
  411. Thanks.
  412.  
  413. -Cindy
  414. -- 
  415.  
  416. - ----------------------------------------------------------------
  417. Cindy Hao                        NW14-2524            
  418. email:hao@slipknot.mit.edu             150 Albany Street
  419.  
  420.  
  421.  
  422. - -------------------------
  423.  
  424. From: hao@slipknot.mit.edu (Cindy Hao)
  425. Subject:  Problem compiling (Please Ignore!!)
  426. Organization: Massachvsetts Institvte of Technology
  427. Date: Thu, 20 Feb 1992 17:19:28 GMT
  428.  
  429. Please ignore the about posting.  I have solved the problem.
  430. I had to re-precompile my TCLHeaders.
  431.  
  432. Sorry about it.
  433.  
  434. -- 
  435. - ----------------------------------------------------------------
  436. Cindy Hao                        NW14-2524            
  437. email:hao@slipknot.mit.edu             150 Albany Street
  438. tel:  (617)253-7458            Cambridge, MA 02139
  439.  
  440.  
  441.  
  442. ---------------------------
  443.  
  444. From: bear@csa.bu.edu (Blair M. Burtan)
  445. Subject: Ok, where are the 411 file on ETO6?
  446. Date: 20 Feb 92 17:10:58 GMT
  447. Organization: Boston U. College of Engineering
  448.  
  449. Am I dreaming?  I can't seem to find any of the 411 files on ETO #6?
  450. Could someone tell me where they are?
  451. --
  452. +---------------------------------------+
  453. + "If it isn't Baroque, don't fix it."  +
  454. +               - Beauty and The Beast  +
  455. +                        +
  456. + Blair M. Burtan: bear@bucsf.bu.edu    +
  457. +                  bear@bu-pub.bu.edu   +
  458. +---------------------------------------+
  459.  
  460.  
  461.  
  462.  
  463.  
  464. - -------------------------
  465.  
  466. From: jahnke@joplin.biosci.arizona.edu (Jerome Jahnke)
  467. Subject:  Ok, where are the 411 file on ETO6?
  468. Date: 20 Feb 92 18:23:29 GMT
  469. Organization: Biology Learning Center
  470.  
  471. In article <BEAR.92Feb20121058@csa.bu.edu>, bear@csa.bu.edu (Blair M. Burtan) writes:
  472. > Am I dreaming?  I can't seem to find any of the 411 files on ETO #6?
  473. > Could someone tell me where they are?
  474.  
  475. I found them on ETO #5 :-). 
  476.  
  477. Serioulsy I think the Q A guys were asleep at the wheel on #6. There were a 
  478. number of things missing from what I can tell. 411 and the Installer were the
  479. biggest to my mind. But what do you expect so soon after the MacWorld Blitz?
  480.  
  481. It also looks to me that we are on the cusp of getting two disc's. And I think
  482. the missing items bring this point even closer to home.
  483.  
  484. > --
  485. > +---------------------------------------+
  486. > + "If it isn't Baroque, don't fix it."  +
  487. > +               - Beauty and The Beast  +
  488. > +                        +
  489. > + Blair M. Burtan: bear@bucsf.bu.edu    +
  490. > +                  bear@bu-pub.bu.edu   +
  491. > +---------------------------------------+
  492.  
  493. Jer,
  494. - --
  495. Jerome Jahnke
  496. Biology Learning Center
  497. University of Arizona
  498. 'jahnke@biosci.arizona.edu' OR +1 (602) 621-3820
  499.  
  500.  
  501.  
  502. - -------------------------
  503.  
  504. From: Bruce.Hoult@bbs.actrix.gen.nz
  505. Subject:  Ok, where are the 411 file on ETO6?
  506. Date: 21 Feb 92 07:29:37 GMT
  507. Organization: Actrix Information Exchange
  508.  
  509. ::sigh::
  510.  
  511. A notice about that was posted here a week or so ago.  Not only
  512. that, but APDA sent out a letter to ETO subscribters about the
  513. problems -- I've got the letter, but not the damn ETO itself.
  514.  
  515. In short: they accidently left 411 off ETO #6, but it wouldn't
  516. have changed from what was on ETO#5.  (And apparently won't
  517. change in ETO #7 either, which is the subject of another
  518. discussion altogether about *when* it will be properly updated
  519. for IM VI).
  520.  
  521. -- 
  522. Bruce.Hoult@bbs.actrix.gen.nz   Twisted pair: +64 4 477 2116
  523. BIX: brucehoult                 Last Resort:  PO Box 4145 Wellington, NZ
  524. "Cray's producing a 200 MIPS personal computer with 64MB RAM and a 1 GB
  525. hard disk that fits in your pocket!"   "Great!  Is it PC compatable?"
  526.  
  527.  
  528.  
  529. - -------------------------
  530.  
  531. From: jspencer@macgate.saylor.mn.org (Jim Spencer)
  532. Subject: Ok, where are the 411 file on ETO6?
  533. Date: 22 Feb 92 15:29:06 GMT
  534.  
  535.  
  536.  BM> Am I dreaming?  I can't seem to find any of the 411 files on ETO #6?
  537.  BM> Could someone tell me where they are?
  538.  
  539. You aren't dreaming, you are having a nightmare.  They "forgot" to put them
  540. on the disk so you have to use the ones on ETO #5 (there are 411 files 
  541. present on #6 for MacApp 3.0).  You should get a letter from APDA telling
  542. that they also have serious bugs in the MPW Shell in the Final Release
  543. folder (vers. 3.2.1) and in the latest C compiler.
  544.  
  545. Considering that this release is over 2 months late, is badly bug ridden,
  546. and that ETO #7 is still coming out next month making ETO #6's value pretty
  547. limited, it strikes me that maybe Apple should be extending everyone's 
  548. subscription.  Sending two letters, one to say they are going to be late
  549. and a second to say they messed up the disk but we can pay even more and
  550. download fixes from AppleLink (at our nickel) or use what we already have
  551. just isn't very fair.
  552.  * Origin: We don't need no stinkin badges!! (1:282/22.510)
  553.  
  554.  
  555.  
  556. ---------------------------
  557.  
  558. From: green@eniac.seas.upenn.edu (Bradley Green )
  559. Subject: Dynamically Loading Subclasses in TC5.0
  560. Date: 20 Feb 92 19:47:13 GMT
  561. Organization: University of Pennsylvania
  562.  
  563. System: Think C 5.0.2, System 7.0
  564.  
  565. I have an application which I am writing in which I would like to be able 
  566. to define a slew of subclasses of a specific object class, each with a 
  567. different functionality.  Then the user would choose which options he/she
  568. desired, and only the code for those subclass methods would be loaded.  Can
  569. this be done?  Is a code resource the way to do it, and does TC support this
  570. option?
  571.  
  572. The eventual goal is to be able to distribute the main package and sell the
  573. additional subclass extensions as options.
  574.  
  575. Thank you for any assistance youcan provide.  Please e-mail me instead/in
  576. addition to posting, as the huge number of daily messages on this newsgroup
  577. prohibit me from reading them all 
  578.  
  579.  
  580.  
  581. - -------------------------
  582.  
  583. From: Bruce.Hoult@bbs.actrix.gen.nz
  584. Subject:  Dynamically Loading Subclasses in TC5.0
  585. Date: 21 Feb 92 16:45:28 GMT
  586. Organization: Actrix Information Exchange
  587.  
  588. In article <66848@netnews.upenn.edu> green@eniac.seas.upenn.edu (Bradley Green ) writes:
  589. > I have an application which I am writing in which I would like to be able 
  590. > to define a slew of subclasses of a specific object class, each with a 
  591. > different functionality.  Then the user would choose which options he/she
  592. > desired, and only the code for those subclass methods would be loaded.  Can
  593. > this be done?  Is a code resource the way to do it, and does TC support this
  594. > option?
  595. > The eventual goal is to be able to distribute the main package and sell the
  596. > additional subclass extensions as options.
  597.  
  598. The easy way to do it would be to just put all the methods for each
  599. subclass in their own segment (you can do this easily in MPW or in THINK
  600. Pascal -- I haven't used THINK C) and link the whole application normally.
  601.  
  602. You would then use ResEdit (or whatever) to remove the CODE resources for
  603. the classes you wanted to make optional and paste them into their own
  604. extensions files.
  605.  
  606. The application jump table will still contain entries for each class (and
  607. therefore you'll need to know what extensions are possible when you compile
  608. the application) so you'll need to make sure the logic of the program
  609. doesn't let you try to use the removed classes.  To dynamically load the
  610. classes all you have to do is open the extensions resource file containing
  611. them before using them.
  612.  
  613. Voila!  Crude, but it will work.
  614.  
  615. -- 
  616. Bruce.Hoult@bbs.actrix.gen.nz   Twisted pair: +64 4 477 2116
  617. BIX: brucehoult                 Last Resort:  PO Box 4145 Wellington, NZ
  618. "Cray's producing a 200 MIPS personal computer with 64MB RAM and a 1 GB
  619. hard disk that fits in your pocket!"   "Great!  Is it PC compatable?"
  620.  
  621.  
  622.  
  623. ---------------------------
  624.  
  625. From: thomas@garnet.berkeley.edu (Mark)
  626. Subject: TCL, RequestMemory() & Error 28
  627. Date: 20 Feb 92 22:01:26 GMT
  628. Organization: University of California, Berkeley
  629.  
  630. In trying to Append an object onto a CList, I got an error 28 - "stack has
  631. moved onto application heap".  The culprit appears to be the RequestMemory()
  632. function which sets up the canFail flag before a memory allocation is made.  
  633.  
  634. My guess is that the RequestMemory() function is so deep in the control
  635. chain that the stack grew too large, and boom.  The problem is, I don't have
  636. a clue about what to do about it.  HELP!
  637.  
  638. What can I do to give more space to the stack?  Or, could this just be
  639. symptomatic of other memory-related problems?
  640.  
  641. Thanks for any advice,
  642.  
  643. Mark Thomas
  644.  
  645.  
  646.  
  647. - -------------------------
  648.  
  649. From: e-sink@uiuc.edu (Eric W. Sink)
  650. Subject:  TCL, RequestMemory() & Error 28
  651. Date: 21 Feb 92 14:33:50 GMT
  652. Organization: University of Illinois at Urbana-Champaign
  653.  
  654. In <kq899mINNlfk@agate.berkeley.edu> thomas@garnet.berkeley.edu (Mark) writes:
  655.  
  656. >What can I do to give more space to the stack?  Or, could this just be
  657. >symptomatic of other memory-related problems?
  658.  
  659. Look in the OOP programming manual, towards the back, under
  660.  
  661. SetMinimumStackSize.
  662.  
  663. -- 
  664. Eric W. Sink,  Spatial Analysis and Systems Team
  665. USACERL, P.O. Box 9005, Champaign, IL 61826-9005
  666. 1-800-USA-CERL x449,   e-sink@uiuc.edu
  667.  
  668.  
  669.  
  670. ---------------------------
  671.  
  672. From: ldo@waikato.ac.nz (Lawrence D'Oliveiro, Waikato University)
  673. Subject: Compression--is it worth it?
  674. Date: 21 Feb 92 05:29:52 GMT
  675. Organization: University of Waikato, Hamilton, New Zealand
  676.  
  677. I got two upgrades to version 3.0 of Canvas yesterday--one for use at work,
  678. and one for my personal copy at home. The first thing I noticed was that
  679. they use Apple's Installer, which is a pain, because it quits everything
  680. that's currently running before doing the install, and then forces me to
  681. restart my machine afterwards.
  682.  
  683. But an even bigger pain turned out to be the time it took to decompress
  684. all the compressed files. The installation on my IIfx at work only a took
  685. a few minutes, but the one on my LC at home took at least a quarter of an hour!
  686. It probably took longer, but at that point I left it and went to do some
  687. shopping. Thankfully, it was done about three-quarters of an hour later,
  688. when I came back.
  689.  
  690. The upgrade came on four double-density disks. After it was all installed,
  691. and I'd personalized it, I copied all the (uncompressed) files onto floppies,
  692. to save the trouble of a reinstall, should I need to do one in future.
  693. I got all the files onto four high-density disks and one double-density one.
  694.  
  695. Now, I ask you, would it have been so much more trouble and expense to
  696. distribute 8 or 9 double-density disks of uncompressed files, instead of four
  697. disks compressed? Think of how much more quickly the installation would
  698. have gone.
  699.  
  700. Compression is all very well for low-bandwidth transmission of data, like
  701. over a modem, but I wonder about the point of it for distributing stuff
  702. on disk. If it had made the difference between distributing 10 floppies
  703. instead of 20, or an even larger number, there might just be a point
  704. where the decompression time is less than the time it would take to
  705. copy the stuff off the extra floppies. But this Canvas upgrade certainly
  706. didn't reach that point.
  707.  
  708. By the way, the new Canvas is a neat program. Haven't gone through the
  709. whole manual yet, but a lot of my wishes have already been answered--
  710. you can create and edit 8- and 32-bit-per-pixel paint objects, and you
  711. can change anchor points of cubic Bezier curves from curve points to corner
  712. points, and back again--like you can in FreeHand! Still some irritating
  713. restrictions on bitmap resolutions, though.
  714.  
  715. Lawrence D'Oliveiro                       fone: +64-7-856-2889
  716. Computer Services Dept                     fax: +64-7-838-4066
  717. University of Waikato            electric mail: ldo@waikato.ac.nz
  718. Hamilton, New Zealand    37^ 47' 26" S, 175^ 19' 7" E, GMT+13:00
  719. "A lot of vendors are offering what I call the three 'lesses'--diskless,
  720. colorless and useless."
  721.           -- Charles Foundyller, quoted in Computerworld of Jan 20
  722.  
  723.  
  724.  
  725. - -------------------------
  726.  
  727. From: k044477@hobbes.kzoo.edu (Jamie R. McCarthy)
  728. Subject:  Compression--is it worth it?
  729. Date: 21 Feb 92 15:50:38 GMT
  730. Organization: Kalamazoo College
  731.  
  732. ldo@waikato.ac.nz (Lawrence D'Oliveiro, Waikato University) writes:
  733. >I got two upgrades to version 3.0 of Canvas yesterday...
  734. >... an even bigger pain turned out to be the time it took to decompress
  735. >all the compressed files. The installation on my IIfx at work only a took
  736. >a few minutes, but the one on my LC at home took at least a quarter of an hour!
  737. >Now, I ask you, would it have been so much more trouble and expense to
  738. >distribute 8 or 9 double-density disks of uncompressed files, instead of four
  739. >disks compressed? Think of how much more quickly the installation would
  740. >have gone. ...
  741. >If it had made the difference between distributing 10 floppies
  742. >instead of 20, or an even larger number, there might just be a point
  743. >where the decompression time is less than the time it would take to
  744. >copy the stuff off the extra floppies.
  745.  
  746. Reducing the number of disks shipped is very important.  Software
  747. companies sometimes have quite a low overhead, and each extra disk bites
  748. another chunk out of it.  It can make a very big difference, believe me.
  749.  
  750. Decompression time isn't so bad.  Grin and bear it.  If you need
  751. something to do, spend the 45 minutes thanking your lucky stars you
  752. didn't buy an IBM--command-line dearchiving is no treat.
  753.  
  754. My opinions, I'm not speaking for anyone else.
  755. -- 
  756.  Jamie McCarthy     Internet: k044477@kzoo.edu     AppleLink: j.mccarthy
  757.  Kzoo randomly kills all my mail;  if I don't acknowledge, try resending.    
  758.  
  759.  
  760.  
  761. ---------------------------
  762.  
  763. Subject:  6.07 Bug
  764. From: guelzow@brandonu.ca
  765. Date: 20 Feb 92 08:42:14 CST
  766. Organization: Brandon University, Brandon, Manitoba, Canada
  767.  
  768. In article <1992Feb18.092154.1284@brandonu.ca>,I wrote:
  769. > Does anybody know anything about a bug in Think C 5.02 (and 4) related to the
  770. > header used for deskaccessories?
  771. > I am writing a multisegment deskaccessory. I usually cannot make it cause a
  772. > system error except in a very specific kind of circumstances:
  773. > On an LC (and possibly other machines, but not on a Plus) running system 6.07
  774. > without MF (and possibly other system configurations): After the DA has been 
  775. > freshly installed, i.e. the computer has not been rebooted since the DA was
  776. > moved into the System by DA mover 3.8 or 4.1 and the DA was not already in
  777. > the system, selecting the DA from the Apple menu causes an immediate
  778. > "illegal instruction" system error: the programme tries to execute an
  779. > instruction not in any heap zone but happens to be 2 bytes off the proper
  780. > allignment.
  781. > This error occurs before any of my instructions are reached, i.e. a
  782. > Debugstr call at the beginning of main is never executed.
  783. I blamed the wrong code: it's not Think C and it's not my code either but
  784. it seems to be a bug in the operating system: It happens also with the 
  785. Apple supplied Calculator DA (I didn't try it with any other DA) and the 
  786. "illegal instruction" system error occurs exactly if the DA is installed 
  787. with an ID that was not in used at last startup. (The LC/6.07 used only
  788. Apple supplied INITs, ATM 2.03 and FontPorter.) I am unable to figure out
  789. whether maybe some of these cause the problem since the LC isn't my
  790. machine and everrything wotrks fine on the MacPlus I have.
  791. - -----------------------------------------------------------------------------
  792. Andreas Guelzow  Dept. of Mathematics & Comp. Sc. Brandon University MB Canada
  793. Guelzow@BrandonU.Ca
  794.  
  795.  
  796.  
  797. ---------------------------
  798.  
  799. From: Pete.Gontier@p811.f70.n109.z1.FidoNet.Org (Pete Gontier)
  800. Subject: patching StripAddress
  801. Date: 21 Feb 92 02:24:18 GMT
  802.  
  803. Last night I had a light bulb go on in my head. Maybe a dim bulb,
  804. but a bulb nevertheless.
  805.  
  806. I figure if System 7.0.1 (OmegaSANE) can hack applications which
  807. call the SANE trap to JSR instead to the floating point code,
  808. why not do the same for _StripAddress?
  809.  
  810. I figure there ought to be a way to nuke calls to _StripAddress
  811. if the machine's in 32-bit mode. Yes, of course it's much more
  812. complex than that. Probably whether the *heap* is a 32-bit heap
  813. is more important than whether the machine is in 32-bit mode.
  814.  
  815. But I haven't gotten that far yet. I attempted to patch
  816. _StripAddress in the way I always do, with "known-good" routines
  817. for patching. But when I call NSetTrapAddress against
  818. _StripAddress, the machine hangs.
  819.  
  820. I figured this might have something to do with NSetTrapAddress
  821. calling _StripAddress when the _StripAddress trap table entry is in an
  822. inconsistent state. But I don't feel like putting the time in
  823. to figure out the format of those tables to see what's going on.
  824.  
  825. Hints? Anybody feel like writing this? I was going to give it
  826. away anyway.
  827.  * Origin: EC Technology, Santa Barbara, CA (1:109/70.811)
  828.  
  829.  
  830.  
  831. - -------------------------
  832.  
  833. From: siegel@world.std.com (Rich Siegel)
  834. Subject:  patching StripAddress
  835. Date: 21 Feb 92 14:51:31 GMT
  836. Organization: Symantec Language Products Group
  837.  
  838. In article <698680662.4@blkcat.FidoNet> Pete.Gontier@p811.f70.n109.z1.FidoNet.Org (Pete Gontier) writes:
  839. >
  840. >I figure there ought to be a way to nuke calls to _StripAddress
  841. >if the machine's in 32-bit mode. Yes, of course it's much more
  842. >complex than that. Probably whether the *heap* is a 32-bit heap
  843. >is more important than whether the machine is in 32-bit mode.
  844. >
  845. >But I haven't gotten that far yet. I attempted to patch
  846. >_StripAddress in the way I always do, with "known-good" routines
  847. >for patching. But when I call NSetTrapAddress against
  848. >_StripAddress, the machine hangs.
  849.  
  850.     Why bother patching _StripAddress? Why bother *calling* _StripAddress
  851. more than once in your entire application? Here's how I do it...
  852.  
  853. unsigned long addrMask;
  854.  
  855. addrMask = StripAddress(-1L); // which computes the right mask for 24 & 32 bit
  856.  
  857. to mask, just use (addr & addrMask). No messy trap calling, and only one call
  858. to _StripAddress at the beginning of your program sets up this global for
  859. the life of the application.
  860.  
  861. R.
  862.  
  863.  
  864.  
  865. -- 
  866. - ---------------------------------------------------------------------
  867. Rich Siegel                              Internet: siegel@world.std.com
  868. Senior Software Engineer                 Applelink: SIEGEL
  869. Symantec Languages Group
  870.  
  871.  
  872.  
  873. - -------------------------
  874.  
  875. From: Pete.Gontier@p811.f70.n109.z1.FidoNet.Org (Pete Gontier)
  876. Subject:  patching StripAddress
  877. Date: 22 Feb 92 01:05:43 GMT
  878.  
  879.  
  880.  RS> From: siegel@world.std.com (Rich Siegel)
  881.  
  882.  RS>     Why bother patching _StripAddress? Why bother *calling* _StripAddress
  883.  RS> more than once in your entire application? Here's how I do it...
  884.  
  885. The idea was to write an INIT which retroactively NOPs out calls to
  886. StripAddress which are already in binary applications.
  887.  * Origin: EC Technology, Santa Barbara, CA (1:109/70.811)
  888.  
  889.  
  890.  
  891. ---------------------------
  892.  
  893. From: c60c-4bl@web-4b.berkeley.edu (Demian)
  894. Subject: Chinese OS?
  895. Date: 23 Feb 92 02:39:26 GMT
  896. Organization: University of California, Berkeley
  897.  
  898.  
  899. Hi, I'd like to know if there's a PD software that allows the Macintosh
  900. System to be displayed in Chinese characters?  I've seen a Japanese
  901. Kanji version so I was wondering if a Chinese one existed?
  902. Preferably easy to access at an ftp site?
  903. Thanks, email appreciated.
  904.  
  905. -Demian
  906.  
  907.  
  908.  
  909. - -------------------------
  910.  
  911. From: slin@acsu.buffalo.edu (Shueh-Fen Lin)
  912. Subject:  Chinese OS?
  913. Date: 23 Feb 92 03:22:32 GMT
  914. Organization: UB
  915.  
  916. In article <kqe2auINNall@agate.berkeley.edu> c60c-4bl@web-4b.berkeley.edu (Demian) writes:
  917. >
  918. >Hi, I'd like to know if there's a PD software that allows the Macintosh
  919. >System to be displayed in Chinese characters?  I've seen a Japanese
  920. >Kanji version so I was wondering if a Chinese one existed?
  921. >Preferably easy to access at an ftp site?
  922. >Thanks, email appreciated.
  923. >
  924. >-Demian
  925.  
  926. This info should be helpful sto you.
  927.  
  928. Apple also has Chinese System, it is called ChineseTalk.  Currently we have
  929. two versions: one is Traditional character version used mainly in Taiwan; the
  930. other is Simplified character version used in mainland China.  However, 
  931. this is only true for System 6.0x.
  932.  
  933. What happened after System 7.0?
  934.  
  935. There is an extension system used under System 7.0 in Taiwan. It will
  936. let System 7.0 users display and enter Chinese characters.  Although not
  937. a whole system itself, Apple Taiwan calls it ChineseTalk II.
  938.  
  939. Don't know if there is also Simplified character version of ChineseTalk II
  940. in mainland China.
  941.  
  942. ChineseTalk 6.0x could be found in ftp.apple.com I guess.   If not, the
  943. best source is APDA's develop CD-ROM which is published per quarter.
  944.  
  945. slin@acsu.buffalo.edu
  946.  
  947.  
  948.  
  949.  
  950. - -------------------------
  951.  
  952. From: ywlee@sunc2.cs.uiuc.edu (Youngwhan Lee)
  953. Subject:  Chinese OS?
  954. Organization: University of Illinois at Urbana-Champaign
  955. Date: Sun, 23 Feb 1992 04:53:20 GMT
  956.  
  957. In <1992Feb23.032232.22425@acsu.buffalo.edu> slin@acsu.buffalo.edu (Shueh-Fen Lin) writes:
  958.  
  959. >In article <kqe2auINNall@agate.berkeley.edu> c60c-4bl@web-4b.berkeley.edu (Demian) writes:
  960. >>
  961. >>Hi, I'd like to know if there's a PD software that allows the Macintosh
  962. >>System to be displayed in Chinese characters?  I've seen a Japanese
  963.  
  964. >Apple also has Chinese System, it is called ChineseTalk.  Currently we have
  965. >two versions: one is Traditional character version used mainly in Taiwan; the
  966. >other is Simplified character version used in mainland China.  However, 
  967. >this is only true for System 6.0x.
  968.  
  969. Do you mean ChineseTalk is a PD? Is it right?
  970.  
  971. youngwhan.
  972. -- 
  973. ywlee@uiuc.edu, ywlee@cs.uiuc.edu           | University of Illinois
  974. 1408 W. University Ave., Urbana, IL. 61801  | Computer Science 
  975. (217) 244-7551                   |
  976. Yes, I believe in science, but nothing else.| Innosys? What is it?
  977.  
  978.  
  979.  
  980. - -------------------------
  981.  
  982. From: d88-jwa@hemul.nada.kth.se (Jon W{tte)
  983. Subject:  Chinese OS?
  984. Date: 23 Feb 92 10:44:31 GMT
  985. Organization: Royal Institute of Technology, Stockholm, Sweden
  986.  
  987. @sunb10.cs.uiuc.edu> ywlee@sunc2.cs.uiuc.edu (Youngwhan Lee) writes:
  988.  
  989.    Do you mean ChineseTalk is a PD? Is it right?
  990.  
  991. No, it's licensed to use on any Apple computer. You may not disassemble,
  992. run on non-apple computers, or such things. That's the way system
  993. software USED to be at Apple. Rumor has it, that's changing, but as of
  994. today, I believe it should be free-for-use from licensed distribution
  995. centres (i.e. your Apple dealer or MUG or ftp.apple.com)
  996.  
  997. --
  998. This Signature is distributed under the conditions of the Signature License,
  999. available at a fee from   h+@nada.kth.se  (Jon W{tte)  Reading the Signature
  1000. implies that you accept to be bound by the terms in said License. Should you
  1001. not agree on any of these terms, you must return the Signature unread to me.
  1002.  
  1003.  
  1004.  
  1005. - -------------------------
  1006.  
  1007. From: slin@acsu.buffalo.edu (Shueh-Fen Lin)
  1008. Subject:  Chinese OS?
  1009. Date: 23 Feb 92 13:38:35 GMT
  1010. Organization: UB
  1011.  
  1012. >
  1013. >Do you mean ChineseTalk is a PD? Is it right?
  1014. >
  1015.  
  1016. It is NOT a PD, it is a System software, just like System 6.05, System 7.0,
  1017. etc.  You use the same method to get ChineseTalk as the way you get new
  1018. Systems. :-)
  1019.  
  1020.  
  1021.  
  1022. - -------------------------
  1023.  
  1024. From: orpheus@reed.edu (P. Hawthorne)
  1025. Subject:  Chinese OS?
  1026. Date: 23 Feb 92 18:06:57 GMT
  1027. Organization: Reed College, Portland OR
  1028.  
  1029.  
  1030.  The Macintosh Office in China? Great. It has more of a chance at bringing
  1031.  about change than the young democrats who were thrown in prison after the
  1032.  demonstrations. I think internationalism is great as long as you're doing
  1033.  the exporting and the product is as good as Macintosh....
  1034.  
  1035.  Theus (orpheus@reed.edu)
  1036. "I have sworn upon the altar of God eternal hostility to all forms of
  1037.  tyranny over the mind of Man," - Thomas Jefferson
  1038.  
  1039.  
  1040.  
  1041. ---------------------------
  1042.  
  1043. End of C.S.M.P. Digest
  1044. **********************
  1045.